1. Field of the Invention
Methods and apparatuses consistent with the present invention relate to a remote user interface (RUI) technology on a home network, and more particularly, to matching protocols of embedded audio/video (AV) contents, and enabling RUI devices to simultaneously perform a protocol matching process for AV contents embedded in user interface (UI) data and a profile matching process.
2. Description of the Related Art
When AV contents embedded in UI data are reproduced, a protocol matching process for the AV contents is additionally required between conventional RUIs. The AV contents may be video, audio, and image tags included in hypertext markup language (HTML) pages.
FIG. 1 illustrates a related art structure of UI data transmitted to an RUI client. The UI data 10 includes various forms of objects. Embedded AV contents 20 are a form of the objects. The embedded AV contents 20 may be divided into AV contents uniform resource identifier (URI) 21, which is location information required to retrieve AV contents, and universal plug and play (UPnP) AV control point (CP) module 22 which performs UPnP-based AV control. The UI data 10 receives a control command from a user and processes the control command. The control command may be for reproducing the AV contents or stopping the reproduction of the AV contents. A major example of the UI data 10 may be a web page displayed using a web browser on the Internet.
The AV contents 20 embedded in the UI data 10 in the form of an object tag may be included in UI data used for extensible hypertext markup language (XHTML)-based RUI related standards, such as Consumer Electronics Association (CEA)-2014. The object tag may include ‘param’ elements, and additional information of AV contents corresponding to an object may be provided using these elements.
RUI devices include an RUI server and an RUI client. A device description of the RUI server includes a <rui:uiServerInfo> tag which is information regarding the RUI server. A uniform resource locator (URL) described in <rui:uiListURL> of the <rui:uiServerInfo> tag indicates an extensible markup language (XML) file, and profile matching is performed based on profiles included in the XML file. In this case, <rui:uiListURL> may include information on ui_profile name, audio_profile name, and video_profile name.
Similarly, a device description of the RUI client includes a <rui:uiClientInfo> tag which is information regarding the RUI client. The <rui:uiClientInfo> tag may have one or more profile lists, and each profile list may include profile name, aspect ratio, and transport.
FIG. 2 illustrates a related art profile matching process between RUI devices. An RUI CP 50 performs discovery and control operations on an RUI client 40 and an RUI server 60 (operation S11). The RUI client 40 identifies a ui profile that can be provided to the RUI server 60, and determines whether the ui profile is included in a profile list of the RUI server 60. That is, the RUI client 40 performs a UI profile matching process (operation S12). If the profile matching process is completed, UI data is transmitted from the RUI server 60 to the RUI client 40 (operation S13). Accordingly, the RUI server 60 receives a request from the RUI client 40 to process an event, processes the event, and notifies the RUI client 40 of the result of event processing (operation S14). A control command for reproducing AV contents included in the UI data or stopping the reproduction of the AV contents is executed, when a protocol matching process for the AV contents, which will be described later, is performed.
FIG. 3 illustrates a related art process of matching protocols of AV contents between RUI devices.
After the profile matching process in FIG. 2 is completed, an RUI server 60 obtains URI information used to access AV contents from a media server 30 before creating UI data 10 (operation S21). The method of obtaining the URI information may vary according to how the media server 30 and the RUI server 60 are implemented. An example of the URI information may be “http://server.com/av.mpg”. The UI data 10 includes the AV contents having the URI information and is transmitted from the RUI server 60 to an RUI client 40 (operation S22). Then, the RUI client 40 provides the UI data 10 to a user through a rendering process. The user inputs a control command to the RUI client 40 in order to request an AV CP 50 to control the AV contents (operation S23). At the request of the user, the AV CP 50 included in a media renderer starts AV contents control. Although the media renderer and the AV CP 50 are not the same devices, they may be implemented as a single device as illustrated in FIG. 3. Alternatively, they may be implemented as separate devices.
When starting the AV contents control, the AV CP 50 requests the media server 30 to provide protocol information (operation S24). In response to the request, the media server 30 provides the protocol information to the AV CP 50 (operation S25). The AV CP 50 extracts protocol information from the media renderer (operation S26), and matches the extracted protocol information with the protocol information provided by the media server 30 (operation S27). If this protocol matching process is completed, the AV CP 50 retrieves the AV contents from the media server 30 using the URI information of the AV contents included in the UI data 10 (operation S28), thereby performing the AV contents control desired by the user.
However, according to the above related art method, the RUI devices must separately perform a profile matching process to transmit UI data and perform a protocol matching process for AV contents included in the UI data. Therefore, if n pieces of AV contents are included in the UI data, the process of extracting protocol information must be performed a maximum of n times for each piece of AV contents through a network. Consequently, the speed of controlling the AV contents may be reduced, and network traffic may be severely increased.